package cn.whb.gulimall.member;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
/**
 * openfeign调用过程
 * 1）nacos注册
 *   1.导入nacos注册依赖
 *         <dependency>
 *             <groupId>com.alibaba.cloud</groupId>
 *             <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
 *         </dependency>
 *   2. 配置nacos注册地址和应用服务名称
 *   cloud:
 *     nacos:
 *       discovery:
 *         server-addr: 127.0.0.1:8848
 *   application:
 *     name: gulimall-coupon
 *   3. 主启动类中加入 @EnableDiscoveryClient
 *   4.开启客户端，访问localhost:8848/nacos  开始页面默认是config所以看不到服务列表
 *
 * 2）创建一个feign调用接口，直接将远程调用的地址复制过来
 *     这里需要复制远程方法的全路径RequestMapping  @RequestMapping("/coupon/coupon/member/list")
 *     在这个接口上面添加@FeignClinet注解，并提供nacos注册的服务名称  @FeignClient("gulimall-coupon")
 *
 * 3） controller类中去调用这个接口的方法
 *     实例化这个接口对象的时候要在主启动类中添加包扫描
 *    @EnableFeignClients(basePackages = "cn.whb.gulimall.member.feign")
 *
 */

@EnableDiscoveryClient
@EnableFeignClients(basePackages = "cn.whb.gulimall.member.feign")
@SpringBootApplication
public class GulimallMemberApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallMemberApplication.class, args);
    }

}
